/**
 * Copyright(c) 2014 Xunton Solutions
 *
 * History:
 *   15-11-14 下午5:28 Created by dwzhang
 */
package com.jade.modules.message.mail;

import java.util.List;
import javax.mail.Address;
import javax.mail.internet.MimeMessage;

/**
 * 邮件发送接口。
 *
 * @author <a href="mailto:dwzhang@xunton.com">dwzhang</a> 
 * @version 1.0 15-11-14 下午5:28
 */
public interface MailClient
{
    /**
     * 发送邮件。
     *
     * @param subject 邮件主题
     * @param content 邮件内容
     * @param recipient 邮件接收者
     * @return 邮件发送状态
     */
    public int sendMail(String subject, Object content, String recipient);

    /**
     * 发送邮件。
     *
     * @param subject 邮件主题
     * @param content 邮件内容
     * @param recipients 邮件接收者
     * @return 邮件发送状态
     */
    public int sendMail(String subject, Object content, Address[] recipients);

    /**
     * 发送邮件。
     *
     * @param message 邮件对象
     * @return 邮件发送状态
     */
    public int sendMail(MimeMessage message);

    /**
     * 发送邮件。
     *
     * @param message 邮件对象
     * @recipients 邮件接收者
     * @return 邮件发送状态
     */
    public int sendMail(MimeMessage message, Address[] recipients);

    /**
     * 创建消息对象。
     *
     * @return 消息对象
     */
    public MimeMessage createMessage();
}
